package $3exceptionhandler;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class FnSLF4JAndLogback {

    static final Logger logger = LoggerFactory.getLogger(FnSLF4JAndLogback.class);
    
    public static void main(String[] args) {
        /**
         * 使用SLF4J和Logback
         * 其实SLF4J类似于Commons Logging，也是一个日志接口，而Logback类似于Log4j，是一个日志的实现。
         * 使用SLF4J，它的接口实际上和Commons Logging几乎一模一样
         * 对比一下Commons Logging和SLF4J的接口：
         * Commons Logging                          SLF4J
         * org.apache.commons.logging.Log           org.slf4j.Logger
         * org.apache.commons.logging.LogFactory    org.slf4j.LoggerFactory
         * 不同之处就是Log变成了Logger，LogFactory变成了LoggerFactory。
         * 使用SLF4J和Logback和前面讲到的使用Commons Logging加Log4j是类似的，先分别下载SLF4J和Logback，然后把以下jar包放到classpath下
         * slf4j-api-1.7.x.jar
         * logback-classic-1.2.x.jar
         * logback-core-1.2.x.jar
         * 然后使用SLF4J的Logger和LoggerFactory即可。和Log4j类似，我们仍然需要一个Logback的配置文件，把logback.xml放到classpath下。
         */
        
        Personlog2 p = new Personlog2();
        
        int score = 99;
        p.setName("XiaoFang");
        p.setScore(score);
        logger.info("Set score {} for Person {} ok.", score, p.getName());

    }

}
class Personlog2 {
    private String name;
    private int age;
    private int score;
    
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }

    public void setScore(int score) {
        this.score = score;
    }
}
